// 引入
const express = require('express')
const fs = require("fs");
const bodyParser = require('body-parser')
// 创建应用对象
var app = express()

// 配置静态资源
// public是文件名,通常是用public
// app.use(express.static('public'))
// 使用自定义的中间件
function myStatic(dir){
    return (req,res,next)=>{
        let path = req.path
        console.log('req.path:',req.path);
        if (path === '/') {
            path = '/index.html'
        }
        console.log('path:',path);
        const filePath = __dirname + '/' + dir + path
        console.log('filePath:',filePath);
        fs.readFile(filePath,(error,data)=>{
            if(error){
                next()// next()走到下面的get里面
                // res.end('ERROR 404')
            }else{
                res.end(data)
            }
        })
    }
}
// 配置静态资源     
app.use(myStatic('public'))


// 使用第三方中间件 解析请求体参数,并保存到req.body上
// app.use(bodyParser.urlencoded({extends:false}))
// app.use(bodyParser.json())

// const allUsers = [{id:1,name:'a',age:14},{id:2,name:'b',age:16},{id:3,name:'c',age:20}]

app.get('/middleware',(req,res)=>{
    console.log('test');
    res.send('get出来')
})
// app.post('/middleware',(req,res)=>{
//     const {b,c}=req.body
//     console.log(b,c);
//     res.send(b,c)
// })


// 启动服务,监听9898端口
app.listen('9898',()=>{
    console.log('启动成功:localhost:9898');
})